﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MyEighthCSharp.Modes
{
    internal class Encoder
    {
        //明文
        public string PlainText { get; set; }

        //密匙
        public string Key { get; set; }

        //密文
        public string CipherText { get; set; }


        //加密
        public void Encode()
        {
            int nkey;//listnum用来存储key的整数形式
            List<int> listnum = new List<int>();
            for (int i = 0; i < Key.Length; i++)
            {
                nkey = Key[i] - 'a';
                listnum.Add(nkey);

            }
            for (int i = 0; i < PlainText.Length; i++)
            {
                //明文字母转换为整数形式
                int numplain = PlainText[i] - 'a';
                //计算密文字母的整数形式
                int n = (i % Key.Length);
                int numcipher = numplain + listnum[n];
                //密文转换为字母形式
                CipherText += Convert.ToChar(numcipher+ 'a');
            }
        }
    }
}
    
